/*
 * sort.h
 *
 *  Created on: 07-Feb-2012
 *      Author: Ashok
 */

#ifndef SORT_H_
#define SORT_H_

typedef struct subArr
{
	int stIdx;	/* Start index of the subArray in the main Array */
	int endIdx; /* End index of the subArray in the main Array */
	int sArrVal; /* Value of the sum of elements of the sub Array */
} subArr_t;


void insertionSort(int *in, int inSize);
void insertionSort_1(int *in, int inSize);
void mergeSort(int *in, int inSize);
void quickSort(int *in, int inSize);
void heapSort(int *in, int inSize);
subArr_t maxSubArrayLinear(int *in, int inSize);
subArr_t maxSubArrayRecursive(int *in, int inSize);
subArr_t maxSubArrayLinTime(int *in, int inSize);


#endif /* INSERTIONSORT_H_ */
